-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[크리스마스 프로모션] 강승구 미션 제출합니다. #4
Open
Win-9
wants to merge
91
commits into
woowacourse-precourse:main
Choose a base branch
from
Win-9:Win9
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
사용할 Enum타입 정리 및 추가
주문 시 음식을 저장하는 음식객체 추가
음식타입을 enum으로 분리
주문에 따라 맞는 음식을 분리
사용자의 정보를 저장하는 클래스 추가
사용자의 정보 저장시 검증
입력시, 출력시의 역할 클래스 분리
방문 날짜를 입력하려 이를 저장한다.
방문 날짜를 입력하는 전체 흐름 사용
메뉴를 입력받고 이를 검증 후 리스트로 변환
메뉴와 갯수를 입력 후 이를 저장
날짜 선언부분 제거
공백 추가
주문에 따른 메뉴 출력
음식 계산 시 총 금액을 더하도록 변경
할인 전 금액을 계산하여 출력
주말, 특별 날짜의 Enu타입과 포함여부 메소드 추가
날짜에 따른 크리스마스 이벤트 할인 합계 로직 구현
헤택에 대한 텍스트 Enum 추가
Map을 이용하여 혜택 내용들을 저장
구매하지 않은 내역은 put하지 않도록 변경
양식에 따라 혜택내역을 출력
혜택리스트를 Map으로 저장
과중된 로직으로 메소드 분리
출력 양식에 따라 controller 메소드 정리
1미만의 메뉴 입력시 에러 처리와 동시에 메소드 분리
메소드의 역할 분리로 Valid로 이동
메소드의 역할 분리로 Valid로 이동
길이를 줄이기 위하여 반복을 진행하는 로직으로 변경
에러 발생시 에러를 보여주고 입력을 다시 받도록 변경
정상과 예외에 대한 날짜 테스트 구현
음식 주문시 정상과 예외테스트 구현
같은 객체를 참조하도록 외부에서 주입 변경
정상 입력에 대한 테스트 추가
평일, 주말에 따른 혜택 금액 테스트 추가
혜택과 할인 테스트를 각각 진행
실제 입력에 따른 날짜 예외 테스트 추가
실제 입력에 따른 날짜 예외 테스트 추가
양식과 다른주문 입력과 존재하지 않는 음식, 중복 입력에 대한 테스트 추가
주문에 따라 주문 내역을 출력
음료만 여러개 주문하는 경우 오류를 잡지 못하는 경우를 해결
음료만 주문시의 예외 테스트 구현
금액에 따라 달라지는 할인적용, 증정 유무 출력 테스트
금액에 따라 옳바른 배지를 지급하는지 테스트
혜택이 아무것도 없을 시 '없음'을 출력
자바 컨벤션에 따라 포매팅 수정
MeanOfRedStone
referenced
this pull request
in MeanOfRedStone/java-christmas-6
Nov 22, 2023
1. ChristmasController - int reservation 변수로 날짜 저장 2. InputView - readDate() 1 ~ 31 사이의 날짜를 입력할 때까지 입력 반복 - validateDate() 1 ~ 31 사이의 날짜를 입력하지 않으면 IllegalArgumentException 발생 3. InputException - dateInputError() 날짜 입력 잘못했을 때의 출력문구
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
3주간 미션을 수행하면서 얻었던 피드백과 지식들을 바탕으로 가장 공들인 미션수행입니다.
자세한 비즈니스 로직과 도메인에 해당하는 로직의 경계와 객체들의 관계에 대해
깊은 고민을 하고 구현하였습니다.